home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
C/C++ Users Group Library 1996 July
/
C-C++ Users Group Library July 1996.iso
/
vol_100
/
145_01
/
ibm.doc
< prev
next >
Wrap
Text File
|
1980-01-01
|
6KB
|
129 lines
.m4 4
.m1 4
.ow 72
.rm 72
.in 3
.nf
MS-DOS version of ROFF4 modified by Glenn Nelson
.in +5
17 November 1984.
418B Locust St.
Santa Cruz, CA 95060
408-429-4235 (work), 408-429-8-429 (home)
.in -5
.fi
.sp
This document can be printed by typing ^Broff4#mx80#ibm.doc#>#prn^b.
It should work with other printers as defined in the files on this disk,
but one warning - I used italics, defined similar to bold.
If your printer cannot recognize carat-I sequences
(Icouldn't figure out
how to print carats!), just read this file.
.sp 2
This document briefly describes changes and bugs in the version
of ROFF4 that now works on MS-DOS systems that emulate an IBM-PC.
You can use it by ^Broff4#[options]#^Ifile1#[file2#...]^i#>#prn^b,
to output directly to your printer. If you want the wall chart
listing (^B-g^b#option), the ^B-g^b should be last on the line
(before the re-direct). UNIX user's should note that unlike nroff,
macro files are included as ordinary files on the command line,
and not as -m options. Hence ^Broff4#mx80#^Imyfile^i#>#prn^b for output
with special graphics on an Epson.
.sp
^BCompiling and Linking^b
.br
To compile and link with DeSmet C, type ^BROFF^b, the batch file
does the rest.
Note new file ^Ibdsjunk.h^i - some things that are noramlly
in ^Ibdscio.h^i, and FERR has been added to ^Istdio.h^i from DeSmet.
There are batch files and other files on this disk that apply
to C86 (Computer Innovations); good luck to anyone who wastes their
time with it.
.sp
All the source has been modified for conditional compiles for BDS,
DeSmet, and Computer Innovations (C86). I finally got it working
with DeSmet when I found out that they had fixed the re-direct bug
in version 2.4.
(It used to be that stderr got re-directed along
with stdout. With ROFF4 this is a real disaster since so much goes
out to stderr, assumed to always be the operator's display.)
.sp
I have a Micromint (Steve Ciarcia's computer from BYTE) running
PC-DOS version 2.00 - that's right, PC-DOS, not MS-DOS. Although
my COM ports don't work with most software, the printer port works
fine with ROFF4.
ROFF4 has been compiled with DeSmet C (from C Ware in Sunnyvale),
and has been tested to
do things as complicated as producing the wall chart of
special characters for an Epson MX-80. However, I probably won't
be using this much as we just got an Imagen laser printer and
Knuth's TeX phototypesetter software in our lab. Well, this was
a fun project.
.sp
^BBDS-C exceptions^b
.br
The program may no longer compile with BDS, due to usage of #if
conditionals. It definitely will not link properly after what I did
to ^Iroff4.h^i. I prefixed all declarations with ^Bextern^b,
and renamed the old ^Iroff4.h^i as ^Iroffdata.c^i. Thus all globals
are declared in one file, and merely named as externs in a universal
include file. This was necessary for C86, though not for DeSmet;
it is a big mistake for BDS, but is the correct thing for UNIX.
fortunately DeSmet takes it either way.
.sp
^BBUGS^b
.br
I fixed a few bugs, most notably the notorious char vs. int problem.
The form of the #if statements is a little gross, but DeSmet didn't like
expressions in the conditional, and one or both of them didn't
recognize #elseif. C86 could handle some expressions, but not something
like #if (BDS || C86). In places you will see code in conditional
compiles that is no different. It's probably there because I thought
it might be a problem, or was too lazy to clean it up.
.sp
I noticed when printing this that when bold then later italics
were turned on, if the line continues on to the next line
before italics is turned off, then even the bold-only text gets
italicized.
.sp
^BEditorial, Flames and Apology^b
.br
When I found out the stderr bug in DeSmet had been fixed I gladly
abandoned my efforts with C86,
called C Ware and paid for my bootleg
copy, informing them of such. I'm happy to say that they were
thankful for my honesty and praise, rather than angry with my theft;
I am once again a student, a partial explanation for my stinginess.
The new compiler arrived the next day!
.sp
Just as with BDS-C for 8-bitters, this a
great product for the MS-DOS world at a price that can't be beat.
I use their visual editor all the time because it's so fast and
simple. If you like ^Ivi^i, you'll appreciate this.
They deserve your support in terms of $$$. I pay for it because I use
it and prefer nothing else at any price.
.sp
I never got it working with C86.
The only reason I tried was because of the above mentioned DeSmet
re-direct problem.
I know this is an optimizing compiler and must produce better code
but in my limited experience there is little difference in size.
Not only that, but C86 is a 4 pass compiler with each pass a seperate
file on disk! It honestly takes more than 8 times as long to compile
and link ROFF4 - over 15 minutes as opposed to less than 2!
It doesn't have a symbolic debugger, costs $350, and I never got
ROFF4 working! And this is supposed to be the best around!
.sp
The problem with C86 was never determined. Every time I ran ROFF4
I got different output. I was testing it with ^Broff4#mx80#-g#>#prn^b,
which should create a wall chart of the Greek and other symbols that
have been defined. Sometimes I got no stderr messages at all. At best
I would get the wall chart, but every character translated into itself!
I think the stack may have been too small - presumably then problem
is with the C86 - IBM linker interface.
.sp
^BThe End^b
.br
I hope this is useful to many, and I'm glad I finally got a chance
to make a contribution to our favorite user's group.